      task_procedure:
        IN:
          nexts: ["Task_A", "Task_B1"]
          wait_until: []
        Task_A:
          nexts: ["OUT"]
          wait_until: ["IN"]
        Task_B1:
          nexts: ["Task_B2"]
          wait_until: ["IN"]
        Task_B2:
          nexts: ["Task_C"]
          wait_until: ["Task_B1"]
        Task_C:
          nexts: ["Task_B3", "Task_D1"]
          wait_until: ["Task_B1", "Task_B2"]
        Task_B3:
          nexts: ["Task_D2"]
          wait_until: ["Task_B1", "Task_C"]
        Task_D1:
          nexts: ["OUT"]
          wait_until: ["Task_B1", "Task_C"]
        Task_D2:
          nexts: ["OUT"]
          wait_until: ["Task_B3", "Task_C"]
        OUT:
          nexts: []
          wait_until: ["Task_D1", "Task_D2"]         


----------------


# Gemini Context Caching 사용할 것

Task_B1 / Task_B2 / Task_B3 / Task_D1 / Task_D2
